package com.salelogistics.sale.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.salelogistics.common.core.annotation.Excel;
import com.salelogistics.sale.domain.SmsDeliveryPlanDetails;
import com.salelogistics.sale.domain.dto.DeliveryPlanDetailsDto;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @author: Hu Kangying
 * @date: 2023/7/18 11:38
 * @description:
 */
@Data
public class DeliveryPlanVo {
    /**
     * 计划单号
     */
    private String planId;

    /**
     * 项目名称
     */
    @Excel(name = "项目名称")
    private String projectName;

    /**
     * 桥段
     */
    @Excel(name = "桥段")
    private String lotSectionCode;
    private Long lotSection;

    /**
     * 施工单位
     */
    @Excel(name = "施工单位")
    private Long buildUnitId;
    private String buildUnitName;

    /**
     * 联系人
     */
    @Excel(name = "联系人")
    private String contacts;

    /**
     * 联系人电话
     */
    @Excel(name = "联系人电话")
    private String contactsTel;

    /**
     * 运输地址
     */
    @Excel(name = "运输地址")
    private String transportAddr;

    /**
     * 供应合同
     */
    @Excel(name = "供应合同")
    private Long contractId;
    private String contractName;

    /**
     * 计划月份
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划月份", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planMonth;

    /**
     * 收货人
     */
    @Excel(name = "收货人")
    private String released;

    /**
     * 到货点
     */
    @Excel(name = "到货点")
    private String deliveryPoint;

    /**
     * 审核人
     */
    @Excel(name = "审核人")
    private Long reviewedBy;

    /**
     * 审核状态
     */
    @Excel(name = "审核状态")
    private Long reviewedStatus;

    /**
     * 审核时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date reviewedTime;

    /**
     * 启用状态
     */
    @Excel(name = "启用状态")
    private Long status;

    /**
     * 备注
     */
    private String note;

    /**
     * 材料信息
     */
    private List<DeliveryPlanDetailsDto> deliveryPlanDetails;
}
